// src/router/index.ts
import { createRouter, createWebHistory, type RouteRecordRaw } from 'vue-router'

// 1. 使用动态导入实现懒加载（提升首屏性能）
const Home = () => import('@/views/Home.vue')
const NotFound = () => import('@/views/NotFound.vue') // 新增404页面

// 2. 将路由配置提取为独立常量（便于维护）
const routes: RouteRecordRaw[] = [
    {
        path: '/',
        name: 'Home',
        component: Home,
        // 3. 可选：添加元信息（用于权限校验等场景）
        meta: {
            requiresAuth: true
        }
    },
    // 4. 添加通配符路由处理404
    {
        path: '/:pathMatch(.*)*',
        name: 'NotFound',
        component: NotFound
    }
]

// 5. 使用 Vite 环境变量（替代 process.env）
const router = createRouter({
    // 注意：Vite 使用 import.meta.env.BASE_URL
    history: createWebHistory(import.meta.env.BASE_URL || '/'),
    routes,
    // 6. 可选：统一配置滚动行为
    scrollBehavior(to, from, savedPosition) {
        return savedPosition || { top: 0 }
    }
})

// 7. 可选：路由守卫（权限控制示例）
// router.beforeEach((to, from, next) => {
//   if (to.meta.requiresAuth && !isLoggedIn()) {
//     next('/login')
//   } else {
//     next()
//   }
// })

export default router
